package com.data.hijack.constant;

/**
 * @author husq
 */
public interface Constants {
    /**
     * Customized business code list. Separate with English commas
     */
    String BIZ_NAMES = "bizNames";
    String EXECUTORS = "executors";
    /**
     * Annotations. Explain the details of this business
     */
    String COMMENT = "comment";
    /**
     * Protocol name. Commonly used ones include:Socket、HTTP、HTTPS、WebSocket、WebService
     */
    String SCHEMA = "schema";
    String SCHEMA_SOCKET = "Socket";
    String SCHEMA_HTTP = "HTTP";
    String SCHEMA_HTTPS = "HTTPS";
    String SCHEMA_WEBSOCKET = "WebSocket";
    String SCHEMA_WEBSERVICE = "WebService";
    /**
     * Is it enabled. 0-Prohibit, 1-Enable
     */
    String STATUS = "status";
    /**
     * 0-prohibit
     */
    String STATUS_0 = "0";
    /**
     * 1-Enable
     */
    String STATUS_1 = "1";
    /**
     * Whether to release. 0-interception, 1-release
     */
    String IS_INTERCEPTABLE = "isInterceptable";
    /**
     * 0-interception
     */
    String IS_INTERCEPTABLE_0 = "0";
    /**
     * 1-Release
     */
    String IS_INTERCEPTABLE_1 = "1";
    /**
     * Does the client request message need to be converted
     */
    String IS_TRANSLATABLE = "isTranslatable";
    /**
     * 0-No need
     */
    String IS_TRANSLATABLE_0 = "0";
    /**
     * 1-need
     */
    String IS_TRANSLATABLE_1 = "1";
    /**
     * The type of request message for the client. Commonly used ones include：json、xml、fixed、tag、mixed
     */
    String MSG_TYPE = "msgType";
    String TRANSFER_MSG_TYPE = "convertedMsgType";
    String MSG_TYPE_FIX_DEF = "fixed";
    String MSG_TYPE_TAG_DEF = "tag";
    String MSG_TYPE_JSON_DEF = "json";
    String MSG_TYPE_MIX_DEF = "mixed";
    String MSG_TYPE_XML_DEF = "xml";
    /**
     * The timeout period for connecting server requests,Unit is milliseconds.Default 30000 milliseconds
     */
    String TIMEOUT = "timeout";
    String TIMEWAIT = "timeWait";
    /**
     * Number of failed requests to connect to the server
     */
    String MAX_CONNECTIONS = "maxConnections";
    /**
     * Character encoding
     */
    String CHARSET = "charset";
    String LOGMESSAGE_TRUE = "true";
    /**
     * What data analysis and secure processing mode should be used for requesting data.1-Configurable,2-Custom
     * implementation
     */
    String MODE = "unpackMode.mode";
    /**
     * 1-Configurable
     */
    String MODE_1 = "1";
    /**
     * 2-Custom implementation
     */
    String MODE_2 = "2";
    /**
     * Customized data analysis processor implementation class full path name
     */
    String PROCCESSOR = "unpackMode.proccessor";
    /**
     * Analysis engine template encoding
     */
    String TEMPLATE = "unpackMode.template";

    /**
     * Default Character Set
     */
    String DEFAULT_CHARSET = "UTF-8";
    /**
     * Reuse objects
     */
    String LOCAL_REUSABLE_FROM = "local.reusableFrom";
    /**
     * Local listening address
     */
    String LOCAL_HOST = "local.host";
    /**
     * local port
     */
    String LOCAL_PORT = "local.port";
    /**
     * Need to access path conversion?0-not switch,1-switch
     */
    String REMOTE_IS_CHANGED = "remote.isChanged";
    /**
     * 0-not switch
     */
    String REMOTE_IS_CHANGED_0 = "0";
    /**
     * 1-switch
     */
    String REMOTE_IS_CHANGED_1 = "1";
    /**
     * server address
     */
    String REMOTE_URL_HOST = "remote.url.host";
    /**
     * Port number
     */
    String REMOTE_URL_PORT = "remote.url.port";
    /**
     * Path
     */
    String REMOTE_URL_PATH = "remote.url.path";
    /**
     * The personalized data required for each business analysis template is configured within metadata
     */
    String META_DATA = "metaData";
    /**
     * Unified error response message
     */
    String ERR_REPLY = "metaData.errReply";

    String TMPDIR = "metaData.tmpDir";
    String LOGMESSAGE = "metaData.logMessage";

    /**
     * System Core Configuration Information
     */
    String CONFIG_CONTEXT = "configContext";
    String SYSTEM_CONFIG_FILENAME = "System_Config";
    String SYSTEM_CONFIG_FILENAME_SUFFIX = "json";
    String PLUGINS_REGESTER_FILENAME = "Plugins_Regester";
    String READABLE_PLUGIN_REGISTRY = "readablePlugins";
    String DOT = ".";
    String HANDLER_CORE_COUNT = "handlerCoreCount";
    String HANDLER_MAX_COUNT = "handlerMaxCount";
    String ANALYSIS_TEMPLATE = "data.hijack.proccess";
    String TEMPLATE_CLASSPATH = "com.data.hijack.analysis.template";
    String BIZ_CONFIG = "bizConfig";
    String MULTIPART_FILE_CTYPE = "text/plain,text/html,application/json";
    String HTTP_REQUEST_PATH = "path";
    String READABLE_PLUGIN_INSTANCE = "readablePluginInstance";
    String BIZ_NAME_IN_PLUGIN = "bizNameInPlug";
    String TEMPLATE_PROCCESSOR = "com.data.hijack.analysis.template.TemplateProccessor";
}
